package com.hfw.system.libraries.drivers;

public abstract class Database {
    public abstract void connect();
    public abstract void query();
    /**
     * Builds a delete query
     * @param Table table name
     * @param Where where clause
     * @return String 
     */
    public String delete(String Table,String Where) {
       // TODO : builds delete query must be implemented
        return "DELETE FROM "+this.escapeTable(Table)+" WHERE " + Where ; 
    }
    
    /**
     * Returns escaped table name 
     * @param Table Table name
     * @return String
     */
    public abstract String escapeTable(String Table);
    
    /**
     * Returns escaped field or value
     * @param Column
     * @return String
     */
    public abstract String escapeColumn(String Column);
    
    /**
     * Builds a Where portion of Query
     * @param Key key
     * @param Value value
     * @param Type type
     * @param NumWheres number of where clauses
     * @param Quote escape the values
     * @return String
     */
    public String where(String Key,String Value, String Type,int NumWheres, String  Quote) {
        // TODO : Add the where builder code here 
        return "";
    }
    
}
